package com.atguigu.yygh.common.config;


import com.google.common.base.Predicates;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import springfox.documentation.builders.ApiInfoBuilder;
import springfox.documentation.builders.PathSelectors;
import springfox.documentation.service.ApiInfo;
import springfox.documentation.service.Contact;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;

import springfox.documentation.swagger2.annotations.EnableSwagger2;

@Configuration//配置类
@EnableSwagger2 //swagger注解
public class Swagger2Config {

//	    @Bean
//	    public Docket webApiConfig() {
//	        return new Docket(DocumentationType.SWAGGER_2)
//	                .groupName("webApi")
//	                .apiInfo(webApiInfo())
//	                .select()
//	                //只显示 api下面的路径
//	                .paths(Predicates.not(PathSelectors.regex("/admin/.*")))
//	                .build();
//	 
//	    }
	    
	    @Bean
	    public Docket adminApiConfig(){
	        return new Docket(DocumentationType.SWAGGER_2)
	                .groupName("adminApi")
	                .apiInfo( adminApiInfo())
	                .select()
	                //只显示 api下面的路径
	                .paths(Predicates.not(PathSelectors.regex("/api/.*")))
	                .build();
	 
	    }
	 
//	    private ApiInfo webApiInfo(){
//	 
//	        return new ApiInfoBuilder()
//	                .title("网站-API文档")
//	                .description("本文档描述了网站微服务接口定义")
//	                .version("1.0")
//	                .contact(new Contact("atguigu", "http://atguigu.com", "1946801435@qq.com"))
//	                .build();
//	    }
	    
	    private ApiInfo adminApiInfo(){
	   	 
	        return new ApiInfoBuilder()
	                .title("网站-API文档")
	                .description("本文档描述了后台管理系统微服务接口定义")
	                .version("1.0")
	                .contact(new Contact("atguigu", "http://atguigu.com", "1946801435@qq.com"))
	                .build();
	    }
}
